import katex from "katex";
import "katex/dist/katex.min.css";

/**
 * 替换 LaTeX 公式语法为 HTML
 */
export function renderWithKatex(content) {
    // 匹配行内公式 \(xxx\)
    content = content.replace(/\$(.+?)\$/g, (_, tex) =>
        katex.renderToString(tex, { throwOnError: false })
    );

    // 匹配块级公式 \[xxx\]
    content = content.replace(/\\\[(.+?)\\\]/gs, (_, tex) =>
        katex.renderToString(tex, { displayMode: true, throwOnError: false })
    );

    // 匹配 \(xxx\)
    content = content.replace(/\\\((.+?)\\\)/g, (_, tex) =>
        katex.renderToString(tex, { displayMode: false, throwOnError: false })
    );

    return content;
}
